package io.geekidea.boot.store.service.Impl;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import io.geekidea.boot.store.dto.StoreDto;
import io.geekidea.boot.store.entity.AreaName;
import io.geekidea.boot.store.entity.OneStore;
import io.geekidea.boot.store.entity.Store;
import io.geekidea.boot.store.mapper.StoreMapper;
import io.geekidea.boot.store.query.StoreQuery;
import io.geekidea.boot.store.service.StoreService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;


@Service
@Transactional(rollbackFor = Exception.class)
public class StoreServiceImpl extends ServiceImpl<StoreMapper, Store> implements StoreService {
    @Resource
    private StoreMapper storeMapper;

    @Override
    public Boolean delById(Integer id) {
        return storeMapper.delByIdInt(id)>0;
    }

    @Override
    public Page<Store> headquartersPage(Page<Store> page, StoreQuery storeQuery) {
        return storeMapper.getStoreList(page,storeQuery);
    }

    @Override
    public OneStore getOneStore(Integer id) {
        return storeMapper.getOneStore(id);
    }

    @Override
    public List<AreaName> getAllAreaName() {

        return  storeMapper.getAllAreaname();
    }

    @Override
    public List<Store> getStore(Integer areaId) {
        return storeMapper.getStore(areaId);
    }


    @Override
    public int addStore(StoreDto storeDto) {

        int row = storeMapper.addStore(storeDto);
        return row;
    }

}
